草庐IT

iOS AVCaptureVideoDataOutput 占用太多内存

全部标签

c++ - 是否有可能获得由 'new' 分配的内存块大小?

你好,我需要记录我的堆,但现在我只想用我的函数重载"new"运算符。我需要总结在malloc()或Heap*()或其他windowsmem*函数之后增加的内存的实际字节数但现在我需要分析当前的堆实现。是否有可能获得像HeapAlloc()函数分配的block大小-HeapSize()?. 最佳答案 我看你没有搜索文档。HeapSize()exists.编辑回想起来,也许您正在寻求HeapSize()的替代方案,您可以在使用新。答案是否定的。标准分配例程没有任何关于内存块的信息,因为:这高度依赖于实现,并且您已经知道block大小(因

c++ - 我可以使用什么工具来分析内存使用情况?

关闭。这个问题不满足StackOverflowguidelines.它目前不接受答案。想改善这个问题吗?更新问题,使其成为on-topic对于堆栈溢出。7年前关闭。Improvethisquestion我有一个使用C++使用VisualStudio2008编写的Windows应用程序。我想获取有关内存使用情况的统计信息,以找到处理内存使用情况的瓶颈和位置。理想情况下,我希望有一个工具可以做到这一点,而无需进入并向代码本身添加计数器/分析逻辑。基本上我正在寻找的是:所有分配的列表(释放与否无关紧要,每次分配时我都想知道)每次分配的调用堆栈和一个计数器,表示调用代码和分配内存的次数。有关已

c++ - boost::regex 库中的内存泄漏

我不太喜欢Boost库。我需要它来匹配我在VS2008中编译的遗留C++/MFC项目中的正则表达式。这是一个简短的代码片段://NeedUnicodesupportCStringss;boost::tregexr(L"(.*?)");boost::tmatchwhat;CStringchat_input(L"Hello");if(boost::regex_match(chat_input,what,r))//Memoryleakonthisline{//extract$1asaCString:ss=L"Match";//CString(what[1].first,what.length

c# - MediaComposition.GetThumbnailAsync() 中的内存泄漏?

在Windows10上调用MediaComposition.GetThumbnailAsync()似乎会显着泄漏内存。从我在模拟器上看到的情况来看,WindowsPhone似乎没问题。也许我遗漏了一些明显的东西,任何人都可以对此有所了解吗?复制:创建空白的c#通用Windows项目。将按钮添加到MainPage.xaml,如下所示:将处理程序添加到MainPage.xaml.cs,如下所示:privateMediaComposition_comp=null;privateasyncvoidButton_Click(objectsender,RoutedEventArgse){if(_c

c++ - audiodg.exe 随着我调用的每个 Beep() 函数不断增长。系统不释放内存

有没有人遇到过调用WindowsBeep(freq,duration)时进程audiodg.exe内存泄漏的问题?我想这不是你通常会注意到的东西,但我发现它在调试和其他事情上很有用,我注意到在audiodg.exe中,每次哔声都会花费我大约1.5MB,它会随着每次哔声而增长,并且永远不会释放内存,除非我重新启动我的计算机或结束任务。我使用的是Windows8.1,它位于任务管理器的详细信息选项卡中。 最佳答案 我现在使用的是Windows10,但这种情况仍在发生。这不是一个很好的修复,但它确实为我消除了内存泄漏。只需转到您的声音设置

c++ - 查看进程内存映射的最佳程序是什么?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我需要查看进程使用的image/heap/malloc()/stack等资源。我知道内存验证器,但它缺少一些功能。

windows - 一个 "secret key"应该如何保留在内存中?

我们有一个服务器可以通过自定义登录程序安全地将key发送给客户端。该key随后用于加密进一步的客户端请求。该key像cookie一样保存在客户端的磁盘上,并由可能在客户端决定注销并导致key过时之前多次启动和停止的程序使用(因此key保存在磁盘上,因为当没有程序运行时,登录和注销之间可能会有很长时间。将key仅保存在内存中而不是磁盘上似乎更安全(如果崩溃或重新启动丢失key并随后强制重新登录也没关系)。在Windows上,在程序的单独执行之间仅将key保留在内存中(忽略内存可能是虚拟的并分页到磁盘)的最佳方法是什么?一个可能的解决方案是让一个普通的Windows服务在接受key的客户端

c++ - 奇怪的 malloc 行为不允许在 64 位进程上分配超过 2GB 的内存

这个问题涉及我正在开发的一个程序。我从事的项目要求不通过网络发送行集或大于2GB的行(网络不能发送大于2GB的数据组)。我已经对代码进行了所有适当的更改,因此它不会发送这个/这些组,但现在我正在尝试构建测试用例。我已经构建了一个测试,它创建了不到10亿行,这些行占用了超过2GB的空间。在通过网络发送这些行之前,程序会正确地过滤掉它们。我遇到的问题是我需要创建一个单独的行来保存一个包含单个字符串的列或列的集合,在该行内,保存字符串,其中该行的大小大于2GB。但是当字符串开始占用接近2GB时,malloc返回NULL。我做了一些研究,发现可能是我没有足够的连续内存,所以我开始添加更多带有较

python - 获取python应用程序内存使用情况

我的主要目标是了解我的python应用程序在执行期间占用了多少内存。我在Windows-32和Windows-64上使用python2.7.5。我在这里找到了获取有关我的过程的一些信息的方法:http://code.activestate.com/recipes/578513-get-memory-usage-of-windows-processes-using-getpro/为方便起见,将代码放在这里:"""FunctionsforgettingmemoryusageofWindowsprocesses."""__all__=['get_current_process','get_m

c++ - 内核态和用户态共享内存。如何共享句柄?

我正在尝试在用户进程和内核之间使用共享内存。选项一-让内核创建部分并让用户模式应用程序按名称“Global\my_mem”打开内存。它仅在只读模式下工作。当我尝试使用FILE_MAP_WRITE打开部分时,它拒绝访问(5)。不确定如何授予访问权限或修改DACL。选项二-通过IOCTL传回句柄。这是有问题的,因为在KERNEL中打开的部分句柄是0xFFFFFFFF80001234。我的理解是,设置了任何高位的句柄不能在用户模式下使用。特别是如果应用程序是32位的:)最初我预计该部分句柄会有点类似于内核文件句柄,我将能够使用它。在内核态和用户态之间建立共享内存channel的正确方法是什么